import { fileURLToPath, URL } from 'node:url'

import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import vueJsx from '@vitejs/plugin-vue-jsx'
import AutoImport from 'unplugin-auto-import/vite'
import Components from 'unplugin-vue-components/vite'
import { ElementPlusResolver } from 'unplugin-vue-components/resolvers'
import postCssPxToRem from "postcss-pxtorem";

// https://vitejs.dev/config/
export default defineConfig({
  plugins: [
    vue(),
    vueJsx(),
    AutoImport({
      resolvers: [ElementPlusResolver()],
    }),
    Components({
      resolvers: [ElementPlusResolver()],
    }),

    postCssPxToRem({
      rootValue: 192, // 按照自己的设计稿修改 1920/10
      unitPrecision: 5, // 保留到5位小数
      selectorBlackList: ["ignore"], // 忽略转换正则匹配项
      propList: ["*", "!border"],
      replace: true,
      mediaQuery: false, // 媒体查询( @media screen 之类的)中不生效
      minPixelValue: 1, //可以选择px小于1的不会被转换
    }),

  ],
  // css: {
  //   postcss: {
  //     plugins: [
  //       postCssPxToRem({
  //         rootValue: 192, // 按照自己的设计稿修改 1920/10
  //         unitPrecision: 5, // 保留到5位小数
  //         selectorBlackList: ["ignore"], // 忽略转换正则匹配项
  //         propList: ["*", "!border"],
  //         replace: true,
  //         mediaQuery: false, // 媒体查询( @media screen 之类的)中不生效
  //         minPixelValue: 1, //可以选择px小于1的不会被转换
  //       })
  //     ]
  //   }
  // },
  resolve: {
    alias: {
      '@': fileURLToPath(new URL('./src', import.meta.url))
    }
  }
})
